package chapter07

import scala.collection.mutable.ListBuffer

object Demo05_ListBuffer {
  def main(args: Array[String]): Unit = {
    //创建可变列表
    val list1: ListBuffer[Int] = new ListBuffer[Int]()
    val list2 = ListBuffer(1,2,3,4)

    println(list2)
    println(list1)
    println("=================")

    //添加元素
    list1.append(15,22)
    list2.prepend(11,22)

    list1.insert(1,77,88)

    println(list1)
    println(list2)
    println("=================")

    list1 += 33 += 88
    98 +=: 922 +=: list1
    println(list1)
    println("=================")

    //合并list
    // ++ 操作以后并不会更改原本的东西只是复制一个进项操作  原本的list并不会发生改变
    val list3 = list1 ++ list2
    println(list1)   //ListBuffer(98, 922, 15, 77, 88, 22, 33, 88)
    println(list2)   //ListBuffer(11, 22, 1, 2, 3, 4)
    println(list3)   //ListBuffer(98, 922, 15, 77, 88, 22, 33, 88, 11, 22, 1, 2, 3, 4)
    println("=================")
    //++=: 会改变list2  不会改变list1
    list1 ++=: list2
    println(list1)   //ListBuffer(98, 922, 15, 77, 88, 22, 33, 88)
    println(list2)   //ListBuffer(98, 922, 15, 77, 88, 22, 33, 88, 11, 22, 1, 2, 3, 4)
    println("=================")
    //修改元素
    list2(3) = 30  //修改3号索引的元素
    println(list2)

    //删除元素
    list2.remove(2)
    list2 -= 88
    println(list2)
  }
}
